package com.sansan.qiangji.service.inter.system;

import com.sansan.qiangji.VO.system.menu.MenuVO;
import com.sansan.qiangji.VO.system.menu.MenuPowerVO;
import com.sansan.qiangji.entity.system.Menu;

import java.util.List;

public interface MenuService {
    int addMenu(Menu menu);

    List<Menu> findAllMenu();

    Menu findByMenuId(Integer menuId);

    List<Menu> findByMenuNode(String menuNode);

    List<Menu> findByMenuRoot(String menuRoot);

    List<Menu> findByMenuParent(String menuParent);

    List<Menu> findByMenuRootIn(List<String> menuRoots);

    List<MenuVO> getChildrenMenu(List<Menu> menus, String root);

    List<MenuVO> getUserChildrenMenu(List<Menu> menus, String root, List<String> userMenus);

    List<MenuPowerVO> getMenuChildrenPower(List<Menu> menus, String root, List<String> menuPowers);

    int updateMenu(Menu menu);

    int deleteByMenuId(List<Menu> menus);
}
